package com.h3c.nem.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

/**
 * Copyright (C), 2020-2020, h3c
 * FileName: TbApprovalRecordDTO
 *
 * @Author: l22886
 * @Date: 2022-01-19
 * Description: tb_approval_record dto实体
 * Version: 1.0
 */
@ApiModel(value="TbApprovalRecord对象", description="")
@Data
@AllArgsConstructor
@NoArgsConstructor
public class TbApprovalRecordDTO {


    @ApiModelProperty(value = "审批记录ID")
    private String approvalId;

    @ApiModelProperty(value = "工单编号")
    private String flowId;

    @ApiModelProperty(value = "工单到达时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="Asia/Shanghai")
    private Date flowArriveTime;

    @ApiModelProperty(value = "11 提交月度个人承诺；12 考核人月度审核；13 月度考核人评价；21 提交转正计划；22 考核人审核;23 考核人评价；31 提交小任务；32 审核小任务；91 流程控制；92 转办；93 终止 66工卡照片替换")
    private Integer approvalType;

    @ApiModelProperty(value = "审批人工号")
    private String approvalUserId;

    @ApiModelProperty(value = "审批人工号/姓名")
    private String approvalUserInfo;

    @ApiModelProperty(value = "审批时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="Asia/Shanghai")
    private Date approvalTime;

    @ApiModelProperty(value = "审批结果：1 通过；2拒绝；3 转办; 4环节回退;5归档")
    private Integer approvalResult;

    @ApiModelProperty(value = "审批说明")
    private String approvalNote;

    @ApiModelProperty(value = "审批渠道：1 PC端；2 移动端；")
    private Integer approveChannel;

    @ApiModelProperty(value = "审批评分")
    private String approvalScore;

    @ApiModelProperty(value = "是否提交 true为提交，false为保存草稿")
    private Boolean submit;

    /**
     * 排序字段 + 升序， -降序
     * 比如 +updateTime 根据 修改时间升序排序，-updateTime 根据 修改时间降序排序
     */
    private String orderBy;

    @ApiModelProperty(value = "提交类型")
    private Integer submitType;

    private String workerDomain;

    @ApiModelProperty(value = "转办对象")
    private String transferWorker;

    private String workerId;

}
